//package routes
//
//import akka.http.scaladsl.server._
//import common.ApiResponse._
//import de.heikoseeberger.akkahttpplayjson.PlayJsonSupport
//import helpers.Logging
//import model.RedPackRequest
//import services.WeiXinPayService
//
//import scala.util._
//
//trait RedPackRoutes extends Directives with PlayJsonSupport with Logging {
//
//  val weChatPayService: WeiXinPayService
//
//  val redPackRoutes: Route = pathPrefix("redpack") {
//    send ~ query
//  }
//
//  def send: Route = path("send") {
//    post {
//      entity(as[RedPackRequest]) { redPackRequest ⇒
//        onComplete(weChatPayService.redPackSend(redPackRequest.toWxRedPackRequest)) {
//          case Success(ret) ⇒
//            complete(Ok(data = ret))
//          case Failure(ex) ⇒
//            complete(Error(error = ex.getMessage))
//        }
//      }
//    }
//  }
//
//  def query: Route = path("query") {
//    (get & parameter('mchBillNo)) { mchBillNo ⇒
//      onComplete(weChatPayService.redPackQuery(mchBillNo)) {
//        case Success(ret) ⇒
//          complete(Ok(data = ret))
//        case Failure(ex) ⇒
//          complete(Error(error = ex.getMessage))
//      }
//    }
//  }
//}
